Automatic tuning method for multivariable model predictive controllers

ABSTRACT

A fast and reliable technique for tuning multivariable model predictive controllers (MPCs) that accounts for performance and robustness is provided. Specifically, the technique automatically yields tuning weights for the MPC based on performance and robustness requirements. The tuning weights are parameters of closed-loop transfer functions which are directly linked to performance and robustness requirements. Automatically searching the tuning parameters in their proper ranges assures that the controller is optimal and robust. This technique will deliver the traditional requirements of stability, performance and robustness, while at the same time enabling users to design their closed-loop behavior in terms of the physical domain. The method permits the user to favor one measurement over another, or to use one actuator more than another.

FIELD OF THE INVENTION

The present invention generally relates to techniques for monitoring andcontrolling multivariable systems and more specifically to techniquesfor automatically tuning multivariable model predictive controllers(MPCs) which take into account performance and robustness requirements.

BACKGROUND OF THE INVENTION

In MPC applications, there is a set of tuning parameters used to tunethe closed-loop response for acceptable performance. Multivariable MPCshave many applications including controlling paper machine processes.Suitable paper machine processes where paper is continuouslymanufactured from wet stock are further described, for instance, in U.S.Pat. No. 6,805,899 to MacHattie et al., U.S. Pat. No. 6,466,839 toHeaven et al., U.S. Pat. No. 6,149,770, to Hu et al., U.S. Pat. No.6,092,003 to Hagart-Alexander et al, U.S. Pat. No. 6,080,278 to Heavenet al., U.S. Pat. No. 6,059,931 to Hu et al., U.S. Pat. No. 6,853,543 toHu et al., and U.S. Pat. No. 5,892,679 to He, which are all assigned toHoneywell International, Inc. and are incorporated herein by reference.

The typical procedure for implementing an MPC control system which isshown in FIG. 1 begins with identifying the process model. Forpapermaking process, this can be accomplished with bump tests. Amultivariable MPC usually has a group of tuning parameters, such asprediction horizon, control horizon and weights. Typically, theseparameters are adjusted via a trial and error procedure depicted assteps 2 through 6 in FIG. 1. This trial and error procedure requires alarge amount of simulations based on some tuning guidelines. Thiscumbersome tuning procedure usually takes a lot of time especially fortuning a multivariable MPC, due to the overlapping effect of the tuningparameters and multiple interactive responses between the inputs andoutputs. In addition, this traditional tuning procedure usually does notconsider the evitable process/model mismatch. Further, if a processmodel is ill-conditioned, the tuning task can be very challenging, asthe closed-loop system can be easily unstable and the actuators are verylikely to become saturated with a typical MPC design. Another practicalissue with prior art tuning methods is that there is no indicationwhether the controller is robustly stable for inevitable modeluncertainties.

In control engineering, many requirements are often defined via thesingular value decomposition and in the frequency domain, where thenecessary requirements of nominal stability, robust stability, andnominal performance are often defined. On the other hand, there areadditional practical closed-loop requirements that are typicallyspecified in the physical domain. In multivariable control thesephysical requirements can include the specification of the relativeimportance of the measured variables or a specification on the relativeusage of actuators. With current tuning techniques, there is noassurance that the controller's performance and robustness. Thecontroller may be too conservative and work sub-optimally or tooaggressive for multivariable systems. There is a need for a consistentautomated tuning method for multivariable MPC that is readilyimplemented and achieves good controller performance and robustness.

In R. Shridhar and D. J. Cooper, “A tuning strategy for unconstrainedmultivariable model predictive control,” Industrial & EngineeringChemistry & Research, vol. 37, no. 10, pp 4003-4016, 1998 and D.Dougherty and D. J. Cooper, “Tuning guidelines of a dynamic matrixcontroller for integrating (non-self-regulating) processes,” Industrial& Engineering Chemistry & Research, vol. 42, no. 8, pp 1739-1752, 2003,the authors proposed some tuning guidelines for multivariable dynamicmatrix controllers. In K. Y. Rani and H. Unbehauen, “Study of predictivecontroller tuning methods,” Automatica, vol. 33, no 12, pp 2243-2248,1997, the authors proposed tuning procedures for predictive controllersthat are based on some tuning rules and closed-loop simulations. In J.H. Lee and Z. Yu, “Tuning of model predictive controllers for robustperformance,” Computers & Chemical Engineering, vol. 18, no. 1, pp.15-37, 1994, tuning rules based on the frequency-domain analysis of theclosed-loop behavior of MPC controllers are presented. In A.Al-Ghazzawi, et al., “On-line tuning strategy for model predictivecontrollers,” Journal of Process Control, vol. 11, no. 3, pp. 265-284,2001, an on-line tuning strategy for linear model predictive controlalgorithms is proposed based on the linear approximation between theclosed-loop predicted output and the MPC tuning parameters. J.Trierweiler and L. A. Farina, “RPN tuning strategy for model predictivecontrol,” Journal of Process Control, vol. 13, no. 7, pp. 591-598, 2003,presented a tuning strategy based on robust performance number formultiple-input multiple-output (MIMO) MPC. However these are notautomatic tuning techniques considering both performance and robuststability.

SUMMARY OF THE INVENTION

The present invention is directed to a fast and reliable technique, forautomatic tuning multivariable model predictive controllers, which takesinto consideration performance and robustness. Specifically, an aspectof the inventive tuning technique is that it automatically yields tuningweights for the MPC based on performance and robustness requirements.The tuning weights are parameters of closed-loop transfer functionswhich are directly linked to performance and robustness requirements.Automatically searching the tuning parameters in their proper rangesassures that the controller is optimal and robust. The inventivetechnique will deliver the traditional requirements of stability,performance and robustness, while at the same time enabling users todesign their closed-loop behavior in terms of the physical domain. Themethod permits the user to favor one measurement (also known ascontrolled variable or CV) over another, or to use one actuator (alsoknown as manipulated variable or MV) more than another.

In one embodiment, the invention is directed to a method ofautomatically tuning a multivariable model predictive controller (MPC)for a multivariable process whose behavior is based on a process modelthat contains model uncertainty wherein the MPC provides futurepredictions of multivariable process properties by solving an objectionfunction that employs tuning weights, the method comprising designingtuning weights while respecting the robust stability condition where themodel uncertainty is of a type that is other than additive unstructureduncertainty, such as multiplicative uncertainty.

In another embodiment, the invention is directed to a method ofautomatically tuning a multivariable model predictive controller (MPC)for a multivariable process that includes the steps of:

(a) identifying a process model for the multivariable process;

(b) calculating closed-loop transfer functions for performance androbustness as functions of tuning parameters for the MPC wherein theprocess model is used to calculate the closed-loop transfer functions orgain functions;

(c) identifying at least one performance requirement for the MPC andtransforming the at least one performance requirement into constraintson frequency responses of the closed-loop transfer functions or gainfunctions;

(d) identifying at least one robustness requirement for the MPC andtransforming the at least one robustness requirement into constraints onfrequency responses of the closed-loop transfer functions or gainfunctions; and

(e) determining optimal tuning parameters with respect to performanceand robustness.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a prior art procedure for implementation of an MPC;

FIG. 2 is a block diagram showing a current tuning method for an MPCusing a trial and error method;

FIG. 3 is a block diagram showing an automated tuning method for an MPC;

FIG. 4 is block diagram of a closed-loop control system withunconstrained MPC and unstructured additive model uncertainty;

FIG. 5 is an automated tuning procedure for an MPC system; and

FIGS. 6A and 6B are graphs that illustrate how changing the tuningweight A affects the closed-loop transfer functions.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

FIG. 2 is a block diagram of an exemplary closed-loop control system inwhich the present invention may be utilized. In general, the plant 10 iscontrolled by the MPC 12 that takes measurements as inputs and generatesoutputs (actuator set points or positions). Target output properties orreference signals y_(sp) are selected by the operator. As furtherdescribed herein, the MPC has an object function in the form of aquadratic programming problem wherein the tuning parameters arematrices. In the prior art tuning process for the MPC, a group of tuningparameters are initially selected and manually set. Thereafter, aclosed-loop simulation is executed and the results are analyzed. If theresults are not satisfactory, this trial and error procedure is repeatedusing a new set of tuning parameters until the simulation yields thedesired results. This prior art procedure typically does not adequatelyaccount for model uncertainty and is very dependent on the particulardisturbances or inputs selected.

FIG. 3 is a block diagram of a closed-loop control system thatincorporates the inventive automated MPC tuner 14 for the MPC 12. Theinventive method can automatically tune any suitable multivariable modelpredictive controller. MPCs are described, for example, in U.S. Pat. No.5,351,184 to Lu, U.S. Pat. No. 5,561,599 to Lu, U.S. Pat. No. 5,574,638to Lu, U.S. Pat. No. 5,572,420 to Lu et al., U.S. Pat. No. 6,807,510 toBackstrom and He, which are all incorporated herein by reference.

The automated MPC tuner 14 can output the optimal tuning parametersbased on the identified model and performance and robustnessrequirements. For papermaking processes (plant 10), preferred techniquesfor implementing the model identification tool to identify the processmodel are to perform standard bump tests and model identification stepsthat are described, for example, in U.S. Pat. No. 6,086,237 toGorinevsky and Heaven, which is incorporated herein by reference. Usingthe process model, easily adjustable tuning parameters can beautomatically searched within possible pre-calculated ranges. The tuningparameters that are determined are then loaded to the MPC that controlsthe papermaking process. The inventive method assures that thecontroller is optimal and robust, that is, the control system canoperate consistently under a variety of operating conditions. The designthe automated MPC tuner 14 is described in detail as follows.

An MPC has multiple outputs, which are also the input variables u of theplant or target system, defined as

$\begin{matrix}{{{u(k)} = \begin{bmatrix}{u_{1}(k)} \\{u_{2}(k)} \\\vdots \\{u_{m}(k)}\end{bmatrix}},} & (1)\end{matrix}$

where u(k) at each discrete time, k=0, 1, 2, . . .

The output variables of the plant are defined as:

$\begin{matrix}{{{y(k)} = \begin{bmatrix}{y_{1}(k)} \\{y_{2}(k)} \\\vdots \\{y_{n}(k)}\end{bmatrix}},} & (2)\end{matrix}$

where y(k) at each discrete time, k=0, 1, 2, . . . Therefore, the plantis a dynamic process G(z) having m input (or manipulated) variables andn controlled output variables,

$\begin{matrix}{{{G(z)} = \begin{bmatrix}{g_{11}(z)} & \cdots & {g_{1m}(z)} \\\vdots & ⋰ & \vdots \\{g_{n\; 1}(z)} & \cdots & {g_{nm}(z)}\end{bmatrix}},} & (3)\end{matrix}$

where g_(ij)(z) is a sub-process model.

In order to develop the inventive tuning algorithm, the inputs, outputs,and the process model G(z) in (3) are preferably scaled. After properpre-processing, scaling can be accomplished by standard techniques whichare described in, for example, U.S. Pat. No. 5,574,638 to Lu andassigned to Honeywell International, Inc, which is incorporated hereinby reference.

The MPC 12 in FIG. 3 is designed with the following preferred quadraticprogramming (QP) problem:

$\begin{matrix}{{\min\limits_{{\Delta \; {u{(k)}}},\cdots \mspace{11mu},{\Delta {({k + H_{c} - 1})}}}{\sum\limits_{i = 1}^{H_{P}}\; {{{\hat{y}( {k + i} )} - {y_{sp}( {k + i} )}}}_{\Gamma}^{2}}} + {\sum\limits_{j = 0}^{H_{c} - 1}\; {{\Delta \; {u( {k + j} )}}}_{\Lambda}^{2}} + {{{u( {k + j} )} - {u_{sp}( {k + j} )}}}_{\Phi}^{2}} & (4)\end{matrix}$subject to: AΔu(k)<b−Cu(k−1)  (5)

y(k)=G(q)u(k)+d(k)  (6)

where y_(sp) is the reference signals, and u_(sp) is the desiredactuator positions, H_(p) and H_(c) are the prediction horizon andcontrol horizon, respectively, ∥x∥_(Γ) ² denotes the weighted Euclideannorm of x defined as ∥x∥_(Γ) ²=x^(T)Γx; Δu(k)=(1−q⁻¹)u(k)=u(k)−u(k−1),where q is the shift operator; the weights Γ, Λ, and Φ are positivesemi-definite matrices (often diagonal) that are defined as:

Γ=diag(γ₁,Γ₂, . . . ,γ_(n)),  (7)

Λ=diag(λ₁,λ₂, . . . ,λ_(m)),  (8)

Φ=diag(φ₁,φ₂, . . . ,φ_(m)).  (9)

In this embodiment, diagonal matrices for Γ, Λ, and Φ are employed forillustrative purposes; it is understood that the inventive technique canalso cover non-diagonal, positive semi-definite matrices. The weightmatrix Φ prevents the closed-loop system from becoming unstable when theplant G(z) is ill-conditioned and there is a mismatch between theprocess and the model. This will be described further below.

There is an inevitable level of model uncertainty associated withidentifying a process. With the present invention, the true processmodel can be assumed to be a set of possible models which is employed inthe closed-loop control system with an MPC 12 and unstructured additivemodel uncertainty Δ(z). The set of possible models are described by

$\begin{matrix}{{{G_{p}(z)} \in {\prod{\text{:}{= \{ {{{G(z)} + {{\Delta (z)}\text{:}{\max\limits_{\forall\omega}{\overset{\_}{\sigma}( {\Delta ( ^{j\omega} )} )}}}} \leq \beta} \}}}}},} & (10)\end{matrix}$

where σ denotes the maximum singular value, z=e^(jω) and the symbol ωrepresents the dynamical frequency, the symbol ‘∀ω’ means for all thefrequencies.

Typically, the prediction horizon H_(p) and control horizon H_(c) can bepredetermined based on the process dynamics following known guidelinesthat are available in the published literature (See, e.g., R. Shidharand D. J. Cooper's Ind. Eng. Chem. Res. 1998, No. 37, p. 4003-4016). Forexample, the prediction horizon H_(p) should be equal to or close to theopen-loop settling time of the slowest sub-process g_(ij)/z) in (3) insamples, and the control horizon H_(c) is typically selected as 60% timein samples of the slowest sub-process to reach steady-state. Therefore,the weights Γ, Λ, and Φ in (4) are used to tune MPC for satisfying thefollowing three closed-loop requirements:

(1) disturbance rejection requirement;

(2) set point tracking requirement; and (3) the closed-loop system givenby (4) -(6) is stable in the face of model uncertainty Δ(z) in (10).

Given that actuators are designed to operate within their ranges formost of the time, the MPC 12 is preferably approximated as a linearunconstrained controller. FIG. 4 is a block diagram of the closed-loopsystem with an unconstrained MPC 16 and a plant model 18 with additivemodel uncertainty Δ(z) in (10). The closed-loop transfer functionsemployed in FIG. 4 can be calculated to satisfy the above threeclosed-loop requirements as follows:

S(z)=(I+G(z)K(z))⁻¹,  (11)

T(z)=(I+G(z)K(z))⁻¹ G(z)K(z)K _(r),  (12)

R(z)=−K(z)(I+G(z)K(z))⁻¹,  (13)

where S(z) is the sensitivity function linking the disturbances d (whichhas the same dimensions as that of y in (2)) and the outputs y, T(z) isthe closed-loop transfer function linking the targets y_(sp) and theoutputs y, and R(z) is the control sensitivity function linking thedisturbances d and the actuators u. Calculating the constant prefiltermatrix K_(r) and complex transfer matrix K(z) for an unconstrained MPCin FIG. 4 is straightforward. (See, e.g., J. M. Maciejowski, PredictiveControl with Constraints, Pearson Education, 2001). K(z) has thefollowing format:

$\begin{matrix}{{K(z)} = {\begin{bmatrix}{k_{11}(z)} & \cdots & {k_{1n}(z)} \\\vdots & ⋰ & \vdots \\{k_{m\; 1}(z)} & \cdots & {k_{mn}(z)}\end{bmatrix}.}} & (14)\end{matrix}$

Note that the closed-loop transfer functions S(z), T(z), and R(z) arefunctions of the tuning parameters Γ, Γ, and Φ in (4).

Due to the multiple inputs and outputs characteristic, the aboveclosed-loop transfer functions can be very complex. In order to simplifythe relationship between the inputs and outputs, it is preferred to usethe following combined gain functions to replace the above closed-loopfunctions for evaluating the performance and robustness of thecontroller:

$\begin{matrix}{{{{s(\omega)}\begin{bmatrix}{ {S( ^{j\omega} )} |_{1{st}\mspace{11mu} {row}}}_{2} \\{ {S( ^{j\omega} )} |_{2{nd}\mspace{11mu} {row}}}_{2} \\\vdots \\{ {S( ^{j\omega} )} |_{n^{th}\mspace{11mu} {row}}}_{2}\end{bmatrix}} \in R^{n \times 1}},} & (15) \\{{{{t(\omega)}\begin{bmatrix}{ {T( ^{j\omega} )} |_{1{st}\mspace{11mu} {row}}}_{2} \\{ {T( ^{j\omega} )} |_{2{nd}\mspace{11mu} {row}}}_{2} \\\vdots \\{ {T( ^{j\omega} )} |_{n^{th}\mspace{11mu} {row}}}_{2}\end{bmatrix}} \in R^{n \times 1}},} & (16) \\{{{{r(\omega)}\begin{bmatrix}{ {R( ^{j\omega} )} |_{1{st}\mspace{11mu} {row}}}_{2} \\{ {R( ^{j\omega} )} |_{2{nd}\mspace{11mu} {row}}}_{2} \\\vdots \\{ {R( ^{j\omega} )} |_{n^{th}\mspace{11mu} {row}}}_{2}\end{bmatrix}} \in R^{n \times 1}},} & (17)\end{matrix}$

where ∥A_(ith row)∥₂ denotes the vector 2-norm (Euclidean norm) of thei^(th) row vector of matrix A. The reason for selecting the Euclideannorm is that it allows for summing up all channels. Practical controlloop specifications are often applied to each measurement and eachactuator. For example, the first row (a scalar) of the combined“sensitivity function” s(ω) in (15) reflects the gain between thedisturbances from all channels (i.e., d₁ to d_(n)) and the first outputy₁. The target peaks (the absolute maximum elements) of the above gainfunctions s(ω), t(ω), and r(ω) are defined as M_(s), M_(t), and M_(r),respectively and the typical ranges for M_(s), M_(t), and M_(r) are1.3˜1.8, 1.2˜1.6, and 0.6˜1.6, respectively. For example, M_(s)=1.3denotes up to 30% overshoot for any controlled variables at anyfrequency.

Based on the robust control theory, the closed-loop system in FIG. 4 isrobustly stable for all plants G_(p)(z) in (10) if it is nominallystable and satisfies the following condition:

$\begin{matrix}{{{\max\limits_{\forall\omega}{\overset{\_}{\sigma}( {R( ^{j\omega} )} )}} = {{{{R(z)}}_{\infty} < \frac{1}{\beta} \leq \frac{1}{{{\Delta (z)}}_{\infty}}} = \frac{1}{\max\limits_{\forall\omega}{\overset{\_}{\sigma}( {\Delta ( ^{j\omega} )} )}}}},} & (18)\end{matrix}$

where ∥R∥_(∞) denotes the H-infinity (H_(∞)) norm which is equal to themaximum singular value of the control sensitivity function R(z) in (13),β is form (10).

Automatic Tuning

The tuning objective is to find the weights Γ, Λ, and Φ in (4) such thatthe maximum peaks of the combined gain functions s(ω), t(ω), and r(ω) in(15) -(17) are equal, or have values that are as close as possible totheir targets M_(s), M_(t), and M_(r), respectively, subject to therobust stability condition (18).

The number of degrees of freedom in the selection of tuning parametersin (4) can be reduced by noting that, without loss of generality, thediagonal matrix Γ in (4) may be fixed and the closed-loop performancemay be modified via the diagonal matrices Λ and Φ. Typically, thediagonal weight matrix Φ (penalizing U(k)−U_(sp)(k)) significantlyinfluences the steady-state performance. In light of this, the tuningproblem can be separated into two stages: Tuning Φ first with theassumption that Λ=0 and then tuning A second with a known

FIG. 5 shows the general preferred steps of the tuning strategy whichincludes (i) forming the process model (step 21), (ii) transforming theperformance and robustness requirements (step 22), (iii) calculating theclosed-loop transfer functions (step 23), (iv) calculating the possibleranges of the tuning parameters (step 24), (v) searching the tuningparameters in the pre-calculating range (step 25), and (vi) obtainingthe output of the tuning parameters (step 26). It should be noted thatthe inventive technique is not limited by the sequence that the stepsare accomplished.

In practical it is preferred that the automatic MPC tuner be equippedwith tuning knobs for the freedom of changing the controller'sperformance. It is not necessary to change the tuning knobs unless theuser has special requirements on the controlled variables andmanipulated variables, because the automatic tuning algorithm willprovide good balanced performance. The term “balanced performance” ismeant that the relative weights for all controlled variables and for allthe manipulated variables are “ones”.

Step 1: Tuning Φ

In order to simplify the automatic tuning process and reduce thecomputation, a common weight ρ is used for the weight Φ. The user isfree to set the relative weights as described below,

Φ=ρ·Φ^(t) =ρ·diag(φ₁ ¹,φ₂ ¹, . . . ,φ_(m) ¹),  (19)

where φ_(j) ^(i) with j=1 to m is the user-defined relative weights.From the previous discussion, the measurement weights are fixed exceptthat the user-defined relative weights (representing the relativeimportance of controlled variables),

Γ=Γ_(t) =diag(γ₁ ^(t),γ₂ ^(t), . . . ,γ_(n) ^(t)).  (20)

It is known from above that the control sensitivity function R(z) is afunction of ρ. It is evident that from (4) and (19) ρ=0 is the mostaggressive tuning number as the controller will not penalize theactuators away from its desired target positions. It is also notdifficult to find a large enough number for ρ such that

$\begin{matrix}{{{\overset{\_}{\sigma}(  {R(1)} |_{\rho} )} < \frac{1}{\beta}},{{{for}\mspace{14mu} {all}\mspace{14mu} \rho} > \rho_{\max}},} & (21)\end{matrix}$

where β represents the bound value of the model uncertainty defined in(10).

After the range of ρ is known, the common weight ρ for Φ can be solvedby

min ρ  (22)

subject to: ρε[0,ρ_(max)],  (23)

$\begin{matrix}{{\overset{\_}{\sigma}( {R(1)} )} < {\frac{1}{\beta}.}} & (24)\end{matrix}$

Note that for a well-conditioned system G(z), it is very likely that thecommon weight ρ could be zero if the minimum singular value of thesystem σ(G(1))>β, as R(1)=G(1)⁻¹ when ρ=0.

Step 2: Tuning Λ

The desired peaks M_(s) and M_(t) of the combined gain functions s(ω)and t(ω) in (15) -(16) can be translated from the disturbance rejectionand set point tracking requirements. The user is free to change thesetwo peaks based on the performance requirements. In order to obtainrealistic actuation, another peak limit M_(r) is set up for the combinedcontrol sensitivity function r(ω) in (17).

Similarly, a common penalty weight α is used for the weight matrix Λ asfollows,

Λ=α·Λ^(t) =α·diag(λ₁ ^(t),λ₂ ^(t), . . . ,λ_(m) ^(t)),  (25)

where λ_(j) ^(t) with j=1 to m is the user-defined relative weightsbased on special requirements for particular manipulated variables.

From (4) and (25), the most aggressive number for α is α=0. The mostrobust number is to find α_(max) such that

$\begin{matrix}{{{{s(\omega)}}_{\max} \leq \kappa},} & (26) \\{{{\overset{\_}{\sigma}(  {R( ^{j\omega} )} |_{\alpha} )} < \frac{1}{\beta}},{{{for}\mspace{14mu} {all}\mspace{14mu} \alpha} > \alpha_{\max}},} & (27)\end{matrix}$

where |s(ω)|_(max) denotes the maximum element or the largest peak ofs(ω), κ is a lower bound of the largest allowable peak of the combinedsensitivity function s(ω) in (15) designed for the most conservative(robust) controller and typically κ is much smaller than the target peakM_(s) of s(ω).

After solving α_(max), the tuning goal for Λ is to find α such that

$\begin{matrix}{\max\limits_{\forall\omega}( {\min\limits_{\omega {(k)}}\alpha} )} & (28) \\{{{{subject}\mspace{14mu} {to}\text{:}\mspace{14mu} \alpha} \in ( {0,\alpha_{\max}} \rbrack},} & (29) \\{{{\overset{\_}{\sigma}( {R( ^{j\omega} )} )} < \frac{1}{\beta}},{\forall\omega},} & (30) \\{{{\max\limits_{\forall\omega}( {{s( {\omega (k)} )}}_{\max} )} \leq M_{s}},} & (31) \\{{{\max\limits_{\forall\omega}( {{t( {\omega (k)} )}}_{\max} )} \leq M_{t}},} & (32) \\{{{\max\limits_{\forall\omega}( {{r( {\omega (k)} )}}_{\max} )} \leq M_{r}},} & (33)\end{matrix}$

where ω(k) are k_(max) logarithmically or linearly equally spaced pointsform 0 to the Nyquist frequency, |α|_(max) denotes the maximum elementof the vector α, the right hand sides of (31), (32), (33) are tocalculate the largest peaks of s(ω), t(ω), r(ω) in (15), (16), and (17)respectively.

The effect of changing one of the tuning parameters Λ in (4) on theclosed-loop functions was demonstrated. Specifically, FIGS. 6A and 6Bshow the effects of changing Λ in the quadratic programming problem (4)on the combined sensitivity function s(ω) in (15) (FIG. 6A) and thecombined control sensitivity function r(ω) (17). As shown in FIG. 6A,decreasing the common weight α of Λ in (25) affects the shape and peakof combined sensitivity function which represent the controller'sperformance. As shown in FIG. 6B, decreasing the common weight α of Λimpacts the combined control sensitivity function which can be used toevaluate the controller's robustness through the robust stabilitycondition (18) and limit the actuation without being over the targetM_(r).

The foregoing has described the principles, preferred embodiment andmodes of operation of the present invention. However, the inventionshould not be construed as limited to the particular embodimentsdiscussed. Instead, the above-described embodiments should be regardedas illustrative rather than restrictive, and it should be appreciatedthat variations may be made in those embodiments by workers skilled inthe art without departing from the scope of present invention as definedby the following claims.

1. A method of automatically tuning a multivariable model predictivecontroller (MPC) for a multivariable process that comprises the stepsof: (a) identifying a process model for the multivariable process; (b)calculating closed-loop transfer functions for performance androbustness as functions of tuning parameters for the MPC wherein theprocess model is used to calculate the closed-loop transfer functions orgain functions; (c) identifying at least one performance requirement forthe MPC and transforming the at least one performance requirement intoconstraints on frequency responses of the closed-loop transfer functionsor gain functions; (d) identifying at least one robustness requirementfor the MPC and transforming the at least one robustness requirementinto constraints on frequency responses of the closed-loop transferfunctions or gain functions; and (e) determining optimal tuningparameters with respect to performance and robustness.
 2. The method ofclaim 1 further comprising the step of calculating possible ranges ofthe tuning parameters such that a solution is known to exist within therange.
 3. The method of claim 1 further comprising the step of scalinginputs and outputs of the process model.
 4. The method of claim 1wherein step (e) comprises generating tuning parameters such thatperformance is optimized and at least one robust stability condition issatisfied.
 5. The method of claim 1 wherein optimal actuator positionsfor the MPC are determined by solving an object function that employsweights in the form of positive semi-definite matrices and wherein instep (e) values for the weights.
 6. The method of claim 5 wherein theMPC is approximated as a linear unconstrained controller, which ischaracterized by a constant prefilter matrix K_(r) and complex transfermatrix K(z), and closed-loop transfer functions employed are calculatedto satisfy the three closed-loop requirements which are characterized asdisturbance rejection requirements, set point tracking requirements, anda closed-loop system that are given as (C1), (C2), and (C3) as follows:S(z)=(I+G(z)K(z))⁻¹,  (C1)T(z)=(I+G(z)K(z))⁻¹ G(z)K(z)K _(r),  (C2)R(z)=−K(z)(I+G(z)K(z))⁻¹,  (C3) wherein S (z) is the sensitivityfunction linking disturbances d and outputs y, T(z) is the closed-looptransfer function linking the targets y_(sp) and the outputs y, R(z) isthe control sensitivity function linking the disturbances d and theactuators u, and wherein the closed-loop transfer functions S(z), T(z),and R(z) are functions of the tuning parameters Γ, Λ, and Φ.
 7. Themethod of claim 6 wherein in step (e) of determining optimal tuningparameters the values of the weights are determined by employing thefollowing gain functions: $\begin{matrix}{{{s(\omega)} = {\begin{bmatrix}{ {S( ^{j\omega} )} |_{1{st}\mspace{14mu} {row}}}_{2} \\{ {S( ^{j\omega} )} |_{2{nd}\mspace{11mu} {row}}}_{2} \\\vdots \\{ {S( ^{j\omega} )} |_{n^{th}\mspace{11mu} {row}}}_{2}\end{bmatrix} \in R^{n \times 1}}},} & ({C4}) \\{{{t(\omega)} = {\begin{bmatrix}{ {T( ^{j\omega} )} |_{1{st}\mspace{14mu} {row}}}_{2} \\{ {T( ^{j\omega} )} |_{2{nd}\mspace{11mu} {row}}}_{2} \\\vdots \\{ {T( ^{j\omega} )} |_{n^{th}\mspace{11mu} {row}}}_{2}\end{bmatrix} \in R^{n \times 1}}},} & ({C5}) \\{{{r(\omega)} = {\begin{bmatrix}{ {R( ^{j\omega} )} |_{1{st}\mspace{14mu} {row}}}_{2} \\{ {R( ^{j\omega} )} |_{2{nd}\mspace{11mu} {row}}}_{2} \\\vdots \\{ {R( ^{j\omega} )} |_{n^{th}\mspace{11mu} {row}}}_{2}\end{bmatrix} \in R^{n \times 1}}},} & ({C6})\end{matrix}$ wherein ∥A_(ith row)∥₂ denotes the vector 2-norm(Euclidean norm) of the i^(th) row vector of matrix A, and characterizedin that the target peaks (the maximum elements) of the gain functionss(ω), t(ω), and r(ω) are defined as M_(s), M_(t), and M_(r),respectively, ω is a parameter representing the frequency, S(z), T(z),and R(z) with z=e^(jω) are from (C1), (C2), and (C3), n and m designatenumbers of controlled variables y and manipulated variables urespectively.
 8. The method of claim 7 wherein step (e) of determiningthe optimal tuning parameters comprises determining the value of theweights by comparing the maximum peaks of the combined gain functionss(ω), t(ω), and r(ω) in (C4), (C5), and (C6) to their targets M_(s),M_(t), and M_(r), respectively, subject to a robust stability condition.9. The method of claim 8 wherein step (e) of determining the optimaltuning parameters comprises determining the value of the weights bycomparing the maximum peaks of the closed-loop transfer functions S(z),T(z), and R(z) in (C1), (C2), and (C3) to their targets M_(s), M_(t),and M_(r), respectively, subject to a robust stability condition. 10.The method of claim 1 wherein the MPC employs an object function of theform: $\begin{matrix}{{\min\limits_{{\Delta \; {u{(k)}}},\ldots \mspace{11mu},{\Delta {({k + H_{c} - 1})}}}{\sum\limits_{i = 1}^{H_{p}}\; {{{\hat{y}( {k + i} )} - {y_{sp}( {k + i} )}}}_{\Gamma}^{2}}} + {\sum\limits_{j = 0}^{H_{c} - 1}\; {{\Delta \; {u( {k + j} )}}}_{\Lambda}^{2}} + {{{u( {k + j} )} - {u_{sp}( {k + j} )}}}_{\Phi}^{2}} & ({C7})\end{matrix}$subject to: AΔu(k)<b−Cu(k−1)  (C8)y(k)=G(q)u(k)+d(k)  (C9) where y_(sp) is comprised of the referencesignals, u_(sp) is comprised of desired actuator positions, H_(p) andH_(c) are prediction horizon and control horizon, respectively, ∥x∥_(Γ)² denotes the weighted Euclidean norm of x defined as ∥x∥_(Γ) ²=x^(T)Γx;Δu(k)=(1−q⁻¹)u(k)=u(k)−u(k−1), where q is the shift operator; weights Γ,Λ, and Φ are positive semi-definite matrices that include the followingdiagonal matrices:Γ=diag(γ₁,γ₂, . . . ,γ_(n)),  (C10)Λ=diag(λ₁,λ₂, . . . ,λ_(m)),  (C11)Φ=diag(φ₁,φ₂, . . . ,φ_(m)).  (C12)
 11. The method of claim 10 whereinstep (e) of determining the optimal tuning parameters employs theweights Γ, Λ, and Φ in determining the optimal tuning parameters whilesatisfying the following three closed-loop requirements: (i) disturbancerejection requirement, (ii) set point tracking requirement, and (iii)the closed-loop system given by (C7), (C8), and (C9) is stable in theface of model uncertainty.
 12. The method of claim 11 wherein the MPC isapproximated as a linear unconstrained controller, which ischaracterized by a constant prefilter matrix K_(r) and complex transfermatrix K(z), and closed-loop transfer functions employed are calculatedto satisfy the previously defined three closed-loop requirements asfollows:S(z)=(I+G(z)K(z))⁻¹,  (C1)T(z)=(I+G(z)K(z))⁻¹ G(z)K(z)K _(r),  (C2)R(z)=−K(z)(I+G(z)K(z))⁻¹,  (C3) wherein S(z) is the sensitivity functionlinking disturbances d and outputs y, T(z) is the closed-loop transferfunction linking the targets yp and the outputs y, R(z) is the controlsensitivity function linking the disturbances d and the actuators u, andwherein the closed-loop transfer functions S(z), T(z), and R(z) arefunctions of the tuning parameters Γ, Λ, and Φ.
 13. The method of claim12 wherein the closed-loop system is robustly stable for all plantsG_(p)(z) if it is nominally stable and satisfies the followingcondition: $\begin{matrix}{{{\max\limits_{\forall\omega}{\overset{\_}{\sigma}( {R( ^{j\omega} )} )}} = {{{{R(z)}}_{\infty} < \frac{1}{\beta} \leq \frac{1}{{\Delta (z)}_{\infty}}} = \frac{1}{\max\limits_{\forall\omega}{\overset{\_}{\sigma}( {\Delta ( ^{j\omega} )} )}}}},} & ({C13})\end{matrix}$ where ∥R∥_(∞) denotes the H-infinity norm which is equalto the maximum singular value of the control sensitivity function R(z)in (C3), β and Δ(z) are from the plant with additive model uncertaintyG_(p)(z) defined by $\begin{matrix}{{{G_{p}(z)} \in {\Pi \text{:}{= \{ {{{G(z)} + {{\Delta (z)}\text{:}{\underset{\forall\omega}{\mspace{14mu} \max}{\overset{\_}{\sigma}( {\Delta ( ^{j\omega} )} )}}}} \leq \beta} \}}}},} & ({C14})\end{matrix}$ where σ denotes the maximum singular value, z=e^(jω) andthe symbol ω represents the dynamical frequency, the symbol ‘∀ω’ meansfor all the frequencies.
 14. The method of claim 13 wherein a maximumsingular value of R(z) is employed for satisfying a robust stabilitycondition.
 15. The method of claim 14 wherein the closed-loop system isrepresented in the form of gain functions that as follows:$\begin{matrix}{{{s(\omega)} = {\begin{bmatrix}{ {S( ^{j\omega} )} |_{1{st}\mspace{14mu} {row}}}_{2} \\{ {S( ^{j\omega} )} |_{2{nd}\mspace{11mu} {row}}}_{2} \\\vdots \\{ {S( ^{j\omega} )} |_{n^{th}\mspace{11mu} {row}}}_{2}\end{bmatrix} \in R^{n \times 1}}},} & ({C4}) \\{{{t(\omega)} = {\begin{bmatrix}{ {T( ^{j\omega} )} |_{1{st}\mspace{14mu} {row}}}_{2} \\{ {T( ^{j\omega} )} |_{2{nd}\mspace{11mu} {row}}}_{2} \\\vdots \\{ {T( ^{j\omega} )} |_{n^{th}\mspace{11mu} {row}}}_{2}\end{bmatrix} \in R^{n \times 1}}},} & ({C5}) \\{{{r(\omega)} = {\begin{bmatrix}{ {R( ^{j\omega} )} |_{1{st}\mspace{14mu} {row}}}_{2} \\{ {R( ^{j\omega} )} |_{2{nd}\mspace{11mu} {row}}}_{2} \\\vdots \\{ {R( ^{j\omega} )} |_{n^{th}\mspace{11mu} {row}}}_{2}\end{bmatrix} \in R^{n \times 1}}},} & ({C6})\end{matrix}$ wherein |A_(ith row)∥₂ denotes the vector 2-norm(Euclidean norm) of the i^(th) row vector of matrix A, and characterizedin that the target peaks (the maximum elements) of the gain functionss(ω), t(ω), and r(ω) are defined as M_(s), M_(t), and M_(r),respectively.
 16. The method of claim 15 wherein step (e) of determiningthe optimal tuning parameters comprises determining the weights Γ, Λ,and Φ in (C7) by comparing the maximum peaks of the combined gainfunctions s(ω), t(ω), and r(ω) in (C4), (C5), and (C6) to their targetsM_(s), M_(t), and M_(r), respectively, subject to the robust stabilitycondition (C13).
 17. The method of claim 10 wherein step (e) ofdetermining the optimal tuning parameters uses common weights ρ for Λand a for Φ to determine the tuning weights Λ and Φ, respectively, in(C7), where common weights ρ and α are defined asΦ=ρ·diag(φ₁ ^(t),φ₂ ^(t), . . . ,φ_(m) ^(t)),  (C15)Λ=α·diag(λ₁ ^(t),λ₂ ^(t), . . . ,λ_(m) ^(t)),  (C16) where φ_(j) ^(t)and λ_(j) ^(t) with j=1, . . . ,m are relative weights for eachmanipulated variable u_(j).
 18. The method of claim 10 wherein step (e)of determining the optimal tuning parameters determine the tuning weightΦ first and the tuning weight Λ second.
 19. A method of automaticallytuning a multivariable model predictive controller (MPC) for amultivariable process whose behavior is based on a process model thatcontains model uncertainty wherein the MPC provides future predictionsof multivariable process properties by solving an objection functionthat employs tuning weights, the method comprises designing tuningweights while respecting at least one robust stability condition. 20.The method of claim 19 further comprising the step of scaling inputs andoutputs of the process model.
 21. The method of claim 19 wherein themodel uncertainty is of a type that is other than additive unstructureduncertainty.
 22. The method of claim 19 wherein the model uncertainty ismultiplicative uncertainty.